// 如果是定义非对象类型，通常推荐使用type，比如Direction、Alignment、一些Function； n 如果是定义对象类型，那么他们是有区别的：
// interface 可以重复的对某个接口来定义属性和方法；
// 而type定义的是别名，别名是不能重复的；


// // 接口与类型别名（就是把类型的名字换一下或则自定义类型字面量形式）
// // type Person = {
// // 	name: string,
// // 	sex: number,
// // 	phone: number
// // }

// /*
// 	接口中的方法不能有实现   必须要在类中实现 与 抽象类不同（可在抽象类中实现部分与业务）
// */ 
// interface Person {
// 	name: string,
// 	age: number,
// 	sex_: number,
// 	phone: number,
// 	friend?: {
// 		name: string
// 	}
// }
// // 注意 当接口中使用可选参数时 在获取可选参数时是需要使用“可选链操作符”  且必须实现接口中的属性或则方法
// // 
// const person: Person = {
// 	name: '孙行者',
// 	age: 540,
// 	sex_: 1,
// 	phone: 133333333333,
// 	friend: {
// 		name: '行者孙'
// 	}
// }

// console.log(person.name)
// console.log(person.friend?.name)


